<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <p>变量提升：会将变量的声明提升到作用域的最前面，可以先使用后声明</p>
    <script>
        console.log(a);
        // dsfsf 
        var a = 10;

        fn()
        function fn() {
            console.log('我会变量提升');
        }

        let b = 20;
        console.log(b);

        var tem = 123;
        // 暂时性死区 if后面那个{}中 tem是用let声明的 所以不受外部影响 var tem=123在{}内失效
        if(true) {
            // 块级作用域 独立王国--莫德凯撒的大招
            tem = 'abc';
            let tem
            console.log(tem);
        }
    </script>
</body>
</html>